package zhongbo.java.websocket.demo.service;

import zhongbo.java.websocket.demo.dto.TopMessageDto;

import java.util.List;

/**
 * 说明：消息排行榜
 *
 * @author 钟波dellNotebook
 * @since 2025年03月24日 星期一 02:37:21
 */
public interface IMessageRankService {

    /**
     * 增加消息记录count
     *
     * @param userId 用户id
     */
    void incrementMessageCount(String userId);

    /**
     * 获取在线用户消息排行榜
     *
     * @return 用户列表
     */
    List<TopMessageDto> getTopUserMessage();

    /**
     * redis限流
     *
     * @param userId 用户id
     * @return 是否限流, true:不限流,false,限流
     */
    boolean checkRateLimit(String userId);
}
